Add some accessible labels
authorMatthias Clasen <mclasen@redhat.com>
Fri, 3 Feb 2012 07:09:44 +0000 (02:09 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 14 Feb 2012 21:36:54 +0000 (16:36 -0500)
gtk/gtkcolorplane.c
gtk/gtkcolorscale.c

index 95f092accbbc05446ffe1dab7986fb55959210c7..efc205cee63990fc31be61c9eec81de1d92d5206 100644 (file)
 #include "gtkhsv.h"
 #include "gtkcolorplane.h"
 #include "gtkcontainer.h"
+#include "gtkaccessible.h"
 #include "gtkwindow.h"
 #include "gtkbutton.h"
+#include "gtkintl.h"
 
 struct _GtkColorPlanePrivate
 {
@@ -385,6 +387,8 @@ sv_key_press (GtkWidget      *widget,
 static void
 gtk_color_plane_init (GtkColorPlane *plane)
 {
+  AtkObject *atk_obj;
+
   plane->priv = G_TYPE_INSTANCE_GET_PRIVATE (plane,
                                              GTK_TYPE_COLOR_PLANE,
                                              GtkColorPlanePrivate);
@@ -393,6 +397,13 @@ gtk_color_plane_init (GtkColorPlane *plane)
                                              | GDK_BUTTON_PRESS_MASK
                                              | GDK_BUTTON_RELEASE_MASK
                                              | GDK_POINTER_MOTION_MASK);
+
+  atk_obj = gtk_widget_get_accessible (GTK_WIDGET (plane));
+  if (GTK_IS_ACCESSIBLE (atk_obj))
+    {
+      atk_object_set_name (atk_obj, _("Color Plane"));
+      atk_object_set_role (atk_obj, ATK_ROLE_COLOR_CHOOSER);
+    }
 }
 
 static void
index 60ef22861381e656ea2a2ff9c969e8e4a6f92b01..9e8401ea26e8af9677defa8ebd307067541383e5 100644 (file)
@@ -23,6 +23,7 @@
 #include "gtkhsv.h"
 #include "gtkorientable.h"
 #include "gtkstylecontext.h"
+#include "gtkaccessible.h"
 #include "gtkintl.h"
 
 struct _GtkColorScalePrivate
@@ -312,11 +313,23 @@ void
 gtk_color_scale_set_type (GtkColorScale     *scale,
                           GtkColorScaleType  type)
 {
+  AtkObject *atk_obj;
+
   scale->priv->type = type;
   cairo_surface_destroy (scale->priv->surface);
   scale->priv->surface = NULL;
   create_surface (scale);
   gtk_widget_queue_draw (GTK_WIDGET (scale));
+
+  atk_obj = gtk_widget_get_accessible (GTK_WIDGET (scale));
+  if (GTK_IS_ACCESSIBLE (atk_obj))
+    {
+      if (type == GTK_COLOR_SCALE_HUE)
+        atk_object_set_name (atk_obj, C_("Color channel", "Hue"));
+      else if (type == GTK_COLOR_SCALE_ALPHA)
+        atk_object_set_name (atk_obj, C_("Color channel", "Alpha"));
+      atk_object_set_role (gtk_widget_get_accessible (GTK_WIDGET (scale)), ATK_ROLE_COLOR_CHOOSER);
+    }
 }
 
 GtkWidget *